Checks when promise rejections are predicted to be caught.

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with dontHandleAsync
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with awaitAndCreateInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from throwInPromiseConstructor, handling with dontHandleAsync
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:18:28)
throwInPromiseConstructor (catch-prediction.js:18:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:18:34)
throwInPromiseConstructor (catch-prediction.js:18:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from throwInPromiseConstructor, handling with awaitAndCreateInTry
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:18:28)
throwInPromiseConstructor (catch-prediction.js:18:9)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectInPromiseConstructor, handling with dontHandleAsync
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:23:4)
rejectInPromiseConstructor (catch-prediction.js:22:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:23:11)
rejectInPromiseConstructor (catch-prediction.js:22:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)
console: after reject
Previously printed uncaught exception revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:23:11)
rejectInPromiseConstructor (catch-prediction.js:22:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectInPromiseConstructor, handling with awaitAndCreateInTry
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:23:4)
rejectInPromiseConstructor (catch-prediction.js:22:9)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:23:11)
rejectInPromiseConstructor (catch-prediction.js:22:9)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)
console: after reject
Previously printed uncaught exception revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInTryInPromiseConstructor, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:31:6)
-- setTimeout --
(anonymous) (catch-prediction.js:29:39)
rejectAfterDelayInTryInPromiseConstructor (catch-prediction.js:29:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:31:13)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInTryInPromiseConstructor, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:31:6)
-- setTimeout --
(anonymous) (catch-prediction.js:29:39)
rejectAfterDelayInTryInPromiseConstructor (catch-prediction.js:29:9)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectBindAfterDelay, handling with dontHandleAsync
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:40:68)
rejectBindAfterDelay (catch-prediction.js:40:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from rejectBindAfterDelay, handling with awaitAndCreateInTry
console: awaiting promise
console: caught
console: finished without error

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from throwFromAsync, handling with dontHandleAsync
Paused on uncaught promiseRejection
throwFromAsync (catch-prediction.js:44:2)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
throwFromAsync (catch-prediction.js:44:8)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from throwFromAsync, handling with awaitAndCreateInTry
Paused on caught promiseRejection
throwFromAsync (catch-prediction.js:44:2)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from throwFromAsyncAfterDelay, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
throwFromAsyncAfterDelay (catch-prediction.js:49:2)
-- await --
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
throwFromAsyncAfterDelay (catch-prediction.js:49:8)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from throwFromAsyncAfterDelay, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
throwFromAsyncAfterDelay (catch-prediction.js:49:2)
-- await --
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from customRejectingThenable, handling with dontHandleAsync
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
then (catch-prediction.js:56:17)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from customRejectingThenable, handling with awaitAndCreateInTry
console: awaiting promise
console: caught
console: finished without error

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from customRejectingThenableAfterDelay, handling with dontHandleAsync
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:65:34)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from customRejectingThenableAfterDelay, handling with awaitAndCreateInTry
console: awaiting promise
console: caught
console: finished without error

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from exceptionInThen, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:71:39)
-- Promise.then --
exceptionInThen (catch-prediction.js:71:27)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:71:45)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from exceptionInThen, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:71:39)
-- Promise.then --
exceptionInThen (catch-prediction.js:71:27)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from exceptionInCatch, handling with dontHandleAsync
Paused on uncaught promiseRejection
exceptionInCatch (catch-prediction.js:75:17)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: throwing again
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:77:4)
-- Promise.catch --
exceptionInCatch (catch-prediction.js:75:54)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:77:10)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

WARNING: Test paused 2 times
Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from exceptionInCatch, handling with awaitAndCreateInTry
Paused on caught promiseRejection
exceptionInCatch (catch-prediction.js:75:17)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: throwing again
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:77:4)
-- Promise.catch --
exceptionInCatch (catch-prediction.js:75:54)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

WARNING: Test paused 2 times
Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from exceptionInAsyncGenerator, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
gen (catch-prediction.js:84:4)
exceptionInAsyncGenerator (catch-prediction.js:86:18)
-- await --
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
gen (catch-prediction.js:84:10)
exceptionInAsyncGenerator (catch-prediction.js:86:18)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from exceptionInAsyncGenerator, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
gen (catch-prediction.js:84:4)
exceptionInAsyncGenerator (catch-prediction.js:86:18)
-- await --
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectInGenerator, handling with dontHandleAsync
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
gen (catch-prediction.js:91:10)
rejectInGenerator (catch-prediction.js:93:18)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
gen (catch-prediction.js:91:10)
rejectInGenerator (catch-prediction.js:93:18)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectInGenerator, handling with awaitAndCreateInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
gen (catch-prediction.js:91:10)
rejectInGenerator (catch-prediction.js:93:18)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInGenerator, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
gen (catch-prediction.js:98:10)
rejectAfterDelayInGenerator (catch-prediction.js:100:18)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInGenerator, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
gen (catch-prediction.js:98:10)
rejectAfterDelayInGenerator (catch-prediction.js:100:18)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectInAsyncGenerator, handling with dontHandleAsync
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
gen (catch-prediction.js:105:10)
rejectInAsyncGenerator (catch-prediction.js:107:18)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
gen (catch-prediction.js:105:10)
rejectInAsyncGenerator (catch-prediction.js:107:18)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectInAsyncGenerator, handling with awaitAndCreateInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
gen (catch-prediction.js:105:10)
rejectInAsyncGenerator (catch-prediction.js:107:18)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInAsyncGenerator, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
gen (catch-prediction.js:112:10)
rejectAfterDelayInAsyncGenerator (catch-prediction.js:114:18)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInAsyncGenerator, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
gen (catch-prediction.js:112:10)
rejectAfterDelayInAsyncGenerator (catch-prediction.js:114:18)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from asyncGeneratorThrowMethod, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
gen (catch-prediction.js:119:4)
asyncGeneratorThrowMethod (catch-prediction.js:123:15)
-- await --
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
asyncGeneratorThrowMethod (catch-prediction.js:123:16)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from asyncGeneratorThrowMethod, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
gen (catch-prediction.js:119:4)
asyncGeneratorThrowMethod (catch-prediction.js:123:15)
-- await --
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from asyncCatchingGeneratorThrowMethod, handling with dontHandleAsync
console: awaiting promise
Paused on caught exception
gen (catch-prediction.js:129:6)
asyncCatchingGeneratorThrowMethod (catch-prediction.js:136:15)
-- await --
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught by generator
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from asyncCatchingGeneratorThrowMethod, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught exception
gen (catch-prediction.js:129:6)
asyncCatchingGeneratorThrowMethod (catch-prediction.js:136:15)
-- await --
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught by generator
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from throwInAsyncGenerator, handling with dontHandleAsync
console: awaiting promise
Paused on uncaught promiseRejection
gen (catch-prediction.js:142:4)
throwInAsyncGenerator (catch-prediction.js:144:18)
-- await --
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
gen (catch-prediction.js:142:10)
throwInAsyncGenerator (catch-prediction.js:144:18)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from throwInAsyncGenerator, handling with awaitAndCreateInTry
console: awaiting promise
Paused on caught promiseRejection
gen (catch-prediction.js:142:4)
throwInAsyncGenerator (catch-prediction.js:144:18)
-- await --
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseRejectInTry, handling with dontHandleAsync
Paused on uncaught promiseRejection
promiseRejectInTry (catch-prediction.js:150:19)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseRejectInTry (catch-prediction.js:150:26)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseRejectInTry, handling with awaitAndCreateInTry
Paused on caught promiseRejection
promiseRejectInTry (catch-prediction.js:150:19)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterFulfillInPromiseConstructor, handling with dontHandleAsync
console: after pass
console: after reject
console: awaiting promise
console: finished without error

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterFulfillInPromiseConstructor, handling with awaitAndCreateInTry
console: after pass
console: after reject
console: awaiting promise
console: finished without error

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayAfterFulfillInPromiseConstructor, handling with dontHandleAsync
console: awaiting promise
console: finished without error

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayAfterFulfillInPromiseConstructor, handling with awaitAndCreateInTry
console: awaiting promise
console: finished without error

WARNING: Test paused 0 times
------------------------------------------------------

Running test: testCase
> Throwing from throwAfterFulfillInPromiseConstructor, handling with dontHandleAsync
console: after pass
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:176:4)
throwAfterFulfillInPromiseConstructor (catch-prediction.js:173:9)
dontHandleAsync (catch-prediction.js:183:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: awaiting promise
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from throwAfterFulfillInPromiseConstructor, handling with awaitAndCreateInTry
console: after pass
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:176:4)
throwAfterFulfillInPromiseConstructor (catch-prediction.js:173:9)
awaitAndCreateInTry (catch-prediction.js:189:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: awaiting promise
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with catchMethod
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
catchMethod (catch-prediction.js:197:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with catchMethod
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
catchMethod (catch-prediction.js:197:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with finallyMethod
console: awaiting promise
console: finished without error
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
finallyMethod (catch-prediction.js:202:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: finally handler
Uncaught message immediately revoked for reason: Handler added to rejected promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
finallyMethod (catch-prediction.js:202:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with finallyMethod
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
finallyMethod (catch-prediction.js:202:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finally handler
console: finished without error
Uncaught message immediately revoked for reason: Handler added to rejected promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
finallyMethod (catch-prediction.js:202:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with catchMethodInTry
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
catchMethodInTry (catch-prediction.js:207:4)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with catchMethodInTry
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
catchMethodInTry (catch-prediction.js:207:4)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with awaitInTry
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
awaitInTry (catch-prediction.js:215:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with awaitInTry
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
awaitInTry (catch-prediction.js:215:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with awaitAndCreateInTryFinally
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
awaitAndCreateInTryFinally (catch-prediction.js:225:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: finally handler
Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with awaitAndCreateInTryFinally
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
awaitAndCreateInTryFinally (catch-prediction.js:225:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finally handler
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
awaitAndCreateInTryFinally (catch-prediction.js:225:10)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with createInTry
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
createInTry (catch-prediction.js:237:14)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with createInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
createInTry (catch-prediction.js:237:14)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
createInTry (catch-prediction.js:237:14)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

PREDICTION MISMATCH: Exception was uncaught but was predicted to be caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with fireAndForgetInTry
console: awaiting promise
console: finished without error
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
fireAndForgetInTry (catch-prediction.js:250:4)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
fireAndForgetInTry (catch-prediction.js:250:4)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with fireAndForgetInTry
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
fireAndForgetInTry (catch-prediction.js:250:4)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
fireAndForgetInTry (catch-prediction.js:250:4)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)
console: awaiting promise
console: finished without error

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with finallyAndCatchMethod
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
finallyAndCatchMethod (catch-prediction.js:258:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: finally handler
Uncaught message immediately revoked for reason: Handler added to rejected promise
console: caught

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with finallyAndCatchMethod
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
finallyAndCatchMethod (catch-prediction.js:258:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finally handler
console: finished without error
Uncaught message immediately revoked for reason: Handler added to rejected promise
console: caught

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with thenMethod
console: awaiting promise
console: finished without error
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
thenMethod (catch-prediction.js:263:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- Promise.then --
thenMethod (catch-prediction.js:263:7)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with thenMethod
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
thenMethod (catch-prediction.js:263:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
thenMethod (catch-prediction.js:263:2)
runWithResolution (catch-prediction.js:427:22)
-- Promise.then --
thenMethod (catch-prediction.js:263:7)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)
console: finished without error

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with thenMethodWithTwoArgs
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
thenMethodWithTwoArgs (catch-prediction.js:267:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with thenMethodWithTwoArgs
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
thenMethodWithTwoArgs (catch-prediction.js:267:2)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with caughtPromiseRace
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
caughtPromiseRace (catch-prediction.js:272:24)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with caughtPromiseRace
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
caughtPromiseRace (catch-prediction.js:272:24)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with caughtInTryPromiseRace
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
caughtInTryPromiseRace (catch-prediction.js:279:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with caughtInTryPromiseRace
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
caughtInTryPromiseRace (catch-prediction.js:279:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with uncaughtPromiseRace
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
uncaughtPromiseRace (catch-prediction.js:288:22)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with uncaughtPromiseRace
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
uncaughtPromiseRace (catch-prediction.js:288:22)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
uncaughtPromiseRace (catch-prediction.js:288:22)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with ignoredPromiseRace
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
ignoredPromiseRace (catch-prediction.js:294:41)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)


Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with ignoredPromiseRace
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
ignoredPromiseRace (catch-prediction.js:294:41)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with ignoredPromiseRaceInTry
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
ignoredPromiseRaceInTry (catch-prediction.js:301:43)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)


Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with ignoredPromiseRaceInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
ignoredPromiseRaceInTry (catch-prediction.js:301:43)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with caughtPromiseAll
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
caughtPromiseAll (catch-prediction.js:309:23)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with caughtPromiseAll
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
caughtPromiseAll (catch-prediction.js:309:23)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with uncaughtPromiseAll
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
uncaughtPromiseAll (catch-prediction.js:316:21)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with uncaughtPromiseAll
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
uncaughtPromiseAll (catch-prediction.js:316:21)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
uncaughtPromiseAll (catch-prediction.js:316:21)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with caughtPromiseAny
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
caughtPromiseAny (catch-prediction.js:321:23)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with caughtPromiseAny
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
caughtPromiseAny (catch-prediction.js:321:23)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with uncaughtPromiseAny
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
uncaughtPromiseAny (catch-prediction.js:328:21)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught AggregateError: All promises were rejected
-- <empty> --
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with uncaughtPromiseAny
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
uncaughtPromiseAny (catch-prediction.js:328:21)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught AggregateError: All promises were rejected
-- <empty> --
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with ignoredPromiseAny
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
ignoredPromiseAny (catch-prediction.js:334:40)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)


Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with ignoredPromiseAny
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
ignoredPromiseAny (catch-prediction.js:334:40)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with ignoredPromiseAnyInTry
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
ignoredPromiseAnyInTry (catch-prediction.js:341:42)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)


Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with ignoredPromiseAnyInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
ignoredPromiseAnyInTry (catch-prediction.js:341:42)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with ignoredPromiseAnyWithIndirection
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
indirectThrow (catch-prediction.js:351:10)
indirectAny (catch-prediction.js:354:42)
ignoredPromiseAnyWithIndirection (catch-prediction.js:356:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)


Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with ignoredPromiseAnyWithIndirection
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
indirectThrow (catch-prediction.js:351:10)
indirectAny (catch-prediction.js:354:42)
ignoredPromiseAnyWithIndirection (catch-prediction.js:356:8)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with ignoredPromiseAnyWithIndirectionInTry
console: awaiting promise
console: finished without error
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
indirectThrow (catch-prediction.js:361:10)
ignoredPromiseAnyWithIndirectionInTry (catch-prediction.js:367:42)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)


Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with ignoredPromiseAnyWithIndirectionInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
indirectThrow (catch-prediction.js:361:10)
ignoredPromiseAnyWithIndirectionInTry (catch-prediction.js:367:42)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with awaitAfterDelayInTry
console: sleeping
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
awaitAfterDelayInTry (catch-prediction.js:377:20)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
awaitAfterDelayInTry (catch-prediction.js:377:20)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)
console: awaiting
Previously printed uncaught exception revoked for reason: Handler added to rejected promise
console: caught
console: finished without error

PREDICTION MISMATCH: Exception was caught but was predicted to be uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with awaitAfterDelayInTry
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
awaitAfterDelayInTry (catch-prediction.js:377:20)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
awaitAfterDelayInTry (catch-prediction.js:377:20)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)
console: sleeping
console: awaiting promise
console: awaiting
Previously printed uncaught exception revoked for reason: Handler added to rejected promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with catchInAsyncGenerator
console: awaiting promise
Paused on caught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
gen (catch-prediction.js:391:12)
catchInAsyncGenerator (catch-prediction.js:396:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with catchInAsyncGenerator
Paused on caught promiseRejection
promiseReject (catch-prediction.js:14:17)
gen (catch-prediction.js:391:12)
catchInAsyncGenerator (catch-prediction.js:396:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
console: finished without error

Correctly predicted as caught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with catchInGenerator
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
gen (catch-prediction.js:402:12)
catchInGenerator (catch-prediction.js:407:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with catchInGenerator
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
gen (catch-prediction.js:402:12)
catchInGenerator (catch-prediction.js:407:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
gen (catch-prediction.js:402:12)
catchInGenerator (catch-prediction.js:407:18)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from rejectAfterDelayInPromiseConstructor, handling with catchAndAlsoDont
console: awaiting promise
Paused on uncaught promiseRejection
(anonymous) (catch-prediction.js:10:56)
-- setTimeout --
(anonymous) (catch-prediction.js:10:39)
rejectAfterDelayInPromiseConstructor (catch-prediction.js:10:9)
catchAndAlsoDont (catch-prediction.js:411:26)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

console: caught
Uncaught exception: Uncaught Error: fail
-- <empty> --
(anonymous) (catch-prediction.js:10:63)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------

Running test: testCase
> Throwing from promiseReject, handling with catchAndAlsoDont
Paused on uncaught promiseRejection
promiseReject (catch-prediction.js:14:17)
catchAndAlsoDont (catch-prediction.js:411:26)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Uncaught message immediately revoked for reason: Handler added to rejected promise
console: awaiting promise
console: caught
Uncaught exception: Uncaught Error: fail
-- <empty> --
promiseReject (catch-prediction.js:14:24)
catchAndAlsoDont (catch-prediction.js:411:26)
runWithResolution (catch-prediction.js:427:22)
-- setTimeout --
(anonymous) (catch-prediction.js:438:31)
testWrapper (catch-prediction.js:438:8)
(anonymous) (test_framework.js:0:0)

Correctly predicted as uncaught
------------------------------------------------------
